Deno Deploy
#Deno #Anycast
概要
CDNのエッジサーバ上でTypeScriptやJavaScriptコードを実行するためのホスティングサービス (Deno公式)
競合はCloudflare Workersなど
基本的にDenoのCLIで利用できるAPIはDeno Deployでもそのまま利用できます
そのため、ローカルのDenoで開発したコードは基本的にそのままDeno Deployで動かせます
ただし、一部、DenoとDeno Deployで振る舞いが異なるAPIも存在します
Deno Deployで動作するWebフレームワーク
Oak - Bun/Node.js/Cloudflare Workersなどもサポート
Hono - Cloudflare Workers/Bun/Node.jsなどもサポート
Fresh - Preactベースのメタフレームワーク (Deno公式)
Express - Denoのnpmパッケージサポートを活用することで動作させられます
Deno Deploy/Deno Subhostingで動作しているサイト/サービス
wintercg.org (WinterCGの公式サイト)
deno.land (Denoの公式サイト)
Supabase Edge Functions
Netlify Edge Functions
関連サービス/API
Deno KV - DenoまたはDeno Deployが提供するKVS
Deno Queues - 上記のDeno KVを活用したメッセージキュー
Deno Cron - ハンドラーの実行をスケジューリングできるAPI
Deno Subhosting - プラットフォーム提供者が独自のFaaSの構築などに使えるサービス
関連ツール/サービス
deployctl - Deno Deploy公式のCLIツール
JSR - jsrパッケージのレジストリ (現時点ではDeno Deployでjsrパッケージが使えるかはまだ試していないので動くはわからないのですが、いずれにせよ将来的には高確率でサポートされると思われます)
通常のDenoとの違い
Deno KVではSQLiteではなくFoundationDBベースのバックエンドが利用されます
Deno Cronで登録されたハンドラーはDeno Deployによって自動で検出され、実行が管理されます
ファイルシステム関連のAPI(Deno.readFileなど)では、リポジトリ内に含まれるファイルに対してのみ操作が可能です
Web Cache APIでは、アクセス頻度などに基づいてより賢くキャッシュが管理されます
BroadcastChannelは各Deployのインスタンス間で通信するための仕組みとして利用できます
参考
RustでWebバックエンドを書き始めてから1年くらい経った
Static Files on Deno Deploy
How we built a secure, performant, multi-tenant cloud platform to run untrusted code
Introducing Web Cache API support on Deno Deploy
関連ページ
Deno
Denoの使用事例